-- $LastChangedDate: 2007-06-01 02:52:33 +0200 (Fri, 01 Jun 2007) $
-- $LastChangedRevision: 149 $
-- $LastChangedBy: vicente $

SEPARATE (Tareas.Gmonitores)

   -- Añadir un monitor a la lista de monitores
PROCEDURE Append_Monitor (
      Mlist           : IN     Listas.Gmonitores_Lists.List_Type;
      Monid           : IN     Task_Id;
      M               : IN     Monitorptr;
      Monitores_Libre : IN OUT Natural) IS
   It : Listas.Gmonitores_Lists.List_Iterator;
BEGIN
   -- insertamos siempre al final
   It := Listas.Gmonitores_Lists.Last(Mlist);
   -- insertar nodo
   Listas.Gmonitores_Lists.Insert(It, (Monid, M, Libre));

   Monitores_Libre := Monitores_Libre + 1;

   Print("Addmonitor: añadido monitor con ID "& Image(Monid));

   -- log
   Log_Add(Monitor_Cantidad);
   Log_Add(Monitor_Libre);

END Append_Monitor;
